package com.lwm.mapper;

import com.lwm.domain.Device;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 设备信息数据层
 */
public interface DeviceMapper {

    /**
     * 插入
     *
     * @param device 设备
     * @return int 影响行数
     */
    int insert(Device device);

    /**
     * 根据id删除
     *
     * @param ids 设备id
     * @return int 影响行数
     */
    int deleteByIds(@Param("ids") List<Long> ids);

    /**
     * 更新
     *
     * @param device 设备
     * @return int 影响行数
     */
    int update(Device device);

    /**
     * 查询所有
     *
     * @param device 设备
     * @return {@link List}<{@link Device}>
     */
    List<Device> selectAll(Device device);

    /**
     * 根据id查询
     *
     * @param id 设备id
     * @return {@link Device}
     */
    Device selectById(Long id);

    /**
     * 根据设备id集合查询
     *
     * @param deviceIds 设备id
     * @return {@link List}<{@link Device}>
     */
    List<Device> selectByIds(@Param("deviceIds") List<Long> deviceIds);
}
